home *** CD-ROM | disk | FTP | other *** search
/ IRIX Base Documentation 2001 May / SGI IRIX Base Documentation 2001 May.iso / usr / share / catman / g_man / cat3 / OpenGL-ftn / fglpixelmap.z / fglpixelmap
Encoding:
Text File  |  2001-04-17  |  21.7 KB  |  200 lines

  1.  
  2.  
  3.  
  4. ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaapppp((((3333GGGG))))                OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee                ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaapppp((((3333GGGG))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppffffvvvv,,,, ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppuuuuiiiivvvv,,,, ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppuuuussssvvvv - set up pixel transfer
  10.      maps
  11.  
  12.  
  13. FFFFOOOORRRRTTTTRRRRAAAANNNN SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  14.      SUBROUTINE ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppffffvvvv( INTEGER*4 _m_a_p,
  15.                                INTEGER*4 _m_a_p_s_i_z_e,
  16.                                CHARACTER*8 _v_a_l_u_e_s )
  17.      SUBROUTINE ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppuuuuiiiivvvv( INTEGER*4 _m_a_p,
  18.                                 INTEGER*4 _m_a_p_s_i_z_e,
  19.                                 CHARACTER*8 _v_a_l_u_e_s )
  20.      SUBROUTINE ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppuuuussssvvvv( INTEGER*4 _m_a_p,
  21.                                 INTEGER*4 _m_a_p_s_i_z_e,
  22.                                 CHARACTER*8 _v_a_l_u_e_s )
  23.  
  24.  
  25. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  26.      _m_a_p      Specifies a symbolic map name.  Must be one of the following:
  27.               GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____IIII, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____SSSS____TTTTOOOO____SSSS, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____RRRR,
  28.               GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____GGGG, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____BBBB, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____AAAA,
  29.               GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____RRRR____TTTTOOOO____RRRR, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____GGGG____TTTTOOOO____GGGG, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____BBBB____TTTTOOOO____BBBB,
  30.               or GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____AAAA____TTTTOOOO____AAAA.
  31.  
  32.      _m_a_p_s_i_z_e  Specifies the size of the map being defined.
  33.  
  34.      _v_a_l_u_e_s   Specifies an array of _m_a_p_s_i_z_e values.
  35.  
  36. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  37.      ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaapppp sets up translation tables, or _m_a_p_s, used by ffffggggllllCCCCooooppppyyyyPPPPiiiixxxxeeeellllssss,
  38.      ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxIIIImmmmaaaaggggeeee1111DDDD, ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxIIIImmmmaaaaggggeeee2222DDDD, ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee1111DDDD,
  39.      ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee2222DDDD, ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee3333DDDD, ffffggggllllDDDDrrrraaaawwwwPPPPiiiixxxxeeeellllssss, ffffggggllllRRRReeeeaaaaddddPPPPiiiixxxxeeeellllssss,
  40.      ffffggggllllTTTTeeeexxxxIIIImmmmaaaaggggeeee1111DDDD, ffffggggllllTTTTeeeexxxxIIIImmmmaaaaggggeeee2222DDDD, ffffggggllllTTTTeeeexxxxIIIImmmmaaaaggggeeee3333DDDD, ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee1111DDDD,
  41.      ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee2222DDDD, and ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee3333DDDD.  Additionally, if the
  42.      GGGGLLLL____AAAARRRRBBBB____iiiimmmmaaaaggggiiiinnnngggg subset is supported, the routines ffffggggllllCCCCoooolllloooorrrrTTTTaaaabbbblllleeee,
  43.      ffffggggllllCCCCoooolllloooorrrrSSSSuuuubbbbTTTTaaaabbbblllleeee, ffffggggllllCCCCoooonnnnvvvvoooolllluuuuttttiiiioooonnnnFFFFiiiilllltttteeeerrrr1111DDDD, ffffggggllllCCCCoooonnnnvvvvoooolllluuuuttttiiiioooonnnnFFFFiiiilllltttteeeerrrr2222DDDD,
  44.      ffffggggllllHHHHiiiissssttttooooggggrrrraaaammmm, ffffggggllllMMMMiiiinnnnmmmmaaaaxxxx, and ffffggggllllSSSSeeeeppppaaaarrrraaaabbbblllleeeeFFFFiiiilllltttteeeerrrr2222DDDD.  Use of these maps is
  45.      described completely in the ffffggggllllPPPPiiiixxxxeeeellllTTTTrrrraaaannnnssssffffeeeerrrr reference page, and partly
  46.      in the reference pages for the pixel and texture image commands.  Only
  47.      the specification of the maps is described in this reference page.
  48.  
  49.      _m_a_p is a symbolic map name, indicating one of ten maps to set.  _m_a_p_s_i_z_e
  50.      specifies the number of entries in the map, and _v_a_l_u_e_s is a pointer to an
  51.      array of _m_a_p_s_i_z_e map values.
  52.  
  53.      The ten maps are as follows:
  54.  
  55.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____IIII           Maps color indices to color indices.
  56.  
  57.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____SSSS____TTTTOOOO____SSSS           Maps stencil indices to stencil indices.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaapppp((((3333GGGG))))                OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee                ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaapppp((((3333GGGG))))
  71.  
  72.  
  73.  
  74.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____RRRR           Maps color indices to red components.
  75.  
  76.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____GGGG           Maps color indices to green components.
  77.  
  78.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____BBBB           Maps color indices to blue components.
  79.  
  80.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____AAAA           Maps color indices to alpha components.
  81.  
  82.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____RRRR____TTTTOOOO____RRRR           Maps red components to red components.
  83.  
  84.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____GGGG____TTTTOOOO____GGGG           Maps green components to green components.
  85.  
  86.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____BBBB____TTTTOOOO____BBBB           Maps blue components to blue components.
  87.  
  88.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____AAAA____TTTTOOOO____AAAA           Maps alpha components to alpha components.
  89.  
  90.      The entries in a map can be specified as single-precision floating-point
  91.      numbers, unsigned short integers, or unsigned long integers.  Maps that
  92.      store color component values (all but GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____IIII and
  93.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____SSSS____TTTTOOOO____SSSS) retain their values in floating-point format, with
  94.      unspecified mantissa and exponent sizes.  Floating-point values specified
  95.      by ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppffffvvvv are converted directly to the internal floating-point
  96.      format of these maps, then clamped to the range [0,1].  Unsigned integer
  97.      values specified by ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppuuuussssvvvv and ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppuuuuiiiivvvv are converted
  98.      linearly such that the largest representable integer maps to 1.0, and 0
  99.      maps to 0.0.
  100.  
  101.      Maps that store indices, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____IIII and GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____SSSS____TTTTOOOO____SSSS,
  102.      retain their values in fixed-point format, with an unspecified number of
  103.      bits to the right of the binary point.  Floating-point values specified
  104.      by ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppffffvvvv are converted directly to the internal fixed-point
  105.      format of these maps.  Unsigned integer values specified by
  106.      ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppuuuussssvvvv and ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaappppuuuuiiiivvvv specify integer values, with all 0's to
  107.      the right of the binary point.
  108.  
  109.      The following table shows the initial sizes and values for each of the
  110.      maps.  Maps that are indexed by either color or stencil indices must have
  111.                 n
  112.      _m_a_p_s_i_z_e = 2  for some n or the results are undefined.  The maximum
  113.      allowable size for each map depends on the implementation and can be
  114.      determined by calling ffffggggllllGGGGeeeetttt with argument GGGGLLLL____MMMMAAAAXXXX____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____TTTTAAAABBBBLLLLEEEE.  The
  115.      single maximum applies to all maps; it is at least 32.
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.                                                                         PPPPaaaaggggeeee 2222
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137. ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaapppp((((3333GGGG))))                OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee                ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaapppp((((3333GGGG))))
  138.  
  139.  
  140.  
  141. _____________________________________________________________________________________
  142. _m_a_p                    LLLLooooooookkkkuuuupppp IIIInnnnddddeeeexxxx     LLLLooooooookkkkuuuupppp VVVVaaaalllluuuueeee    IIIInnnniiiittttiiiiaaaallll SSSSiiiizzzzeeee   IIIInnnniiiittttiiiiaaaallll VVVVaaaalllluuuueeee
  143. ____________________________________________________________________________________
  144. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____IIII    color index      color index          1               0
  145. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____SSSS____TTTTOOOO____SSSS   stencil index    stencil index         1               0
  146. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____RRRR    color index           R               1               0
  147. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____GGGG    color index           G               1               0
  148. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____BBBB    color index           B               1               0
  149. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____AAAA    color index           A               1               0
  150. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____RRRR____TTTTOOOO____RRRR         R                R               1               0
  151. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____GGGG____TTTTOOOO____GGGG         G                G               1               0
  152. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____BBBB____TTTTOOOO____BBBB         B                B               1               0
  153. GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____AAAA____TTTTOOOO____AAAA         A                A               1               0
  154.  
  155.  
  156. EEEERRRRRRRROOOORRRRSSSS
  157.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____EEEENNNNUUUUMMMM is generated if _m_a_p is not an accepted value.
  158.  
  159.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____VVVVAAAALLLLUUUUEEEE is generated if _m_a_p_s_i_z_e is less than one or larger than
  160.      GGGGLLLL____MMMMAAAAXXXX____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____TTTTAAAABBBBLLLLEEEE.
  161.  
  162.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____VVVVAAAALLLLUUUUEEEE is generated if _m_a_p is GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____IIII,
  163.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____SSSS____TTTTOOOO____SSSS, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____RRRR, GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____GGGG,
  164.      GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____BBBB, or GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____AAAA, and _m_a_p_s_i_z_e is not a power
  165.      of two.
  166.  
  167.      GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNN is generated if ffffggggllllPPPPiiiixxxxeeeellllMMMMaaaapppp is executed between the
  168.      execution of ffffggggllllBBBBeeeeggggiiiinnnn and the corresponding execution of ffffggggllllEEEEnnnndddd.
  169.  
  170. AAAASSSSSSSSOOOOCCCCIIIIAAAATTTTEEEEDDDD GGGGEEEETTTTSSSS
  171.      ffffggggllllGGGGeeeettttPPPPiiiixxxxeeeellllMMMMaaaapppp
  172.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____IIII____SSSSIIIIZZZZEEEE
  173.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____SSSS____TTTTOOOO____SSSS____SSSSIIIIZZZZEEEE
  174.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____RRRR____SSSSIIIIZZZZEEEE
  175.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____GGGG____SSSSIIIIZZZZEEEE
  176.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____BBBB____SSSSIIIIZZZZEEEE
  177.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____IIII____TTTTOOOO____AAAA____SSSSIIIIZZZZEEEE
  178.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____RRRR____TTTTOOOO____RRRR____SSSSIIIIZZZZEEEE
  179.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____GGGG____TTTTOOOO____GGGG____SSSSIIIIZZZZEEEE
  180.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____BBBB____TTTTOOOO____BBBB____SSSSIIIIZZZZEEEE
  181.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____AAAA____TTTTOOOO____AAAA____SSSSIIIIZZZZEEEE
  182.      ffffggggllllGGGGeeeetttt with argument GGGGLLLL____MMMMAAAAXXXX____PPPPIIIIXXXXEEEELLLL____MMMMAAAAPPPP____TTTTAAAABBBBLLLLEEEE
  183.  
  184.  
  185. SSSSEEEEEEEE AAAALLLLSSSSOOOO
  186.      ffffggggllllCCCCoooolllloooorrrrTTTTaaaabbbblllleeee, ffffggggllllCCCCoooolllloooorrrrSSSSuuuubbbbTTTTaaaabbbblllleeee, ffffggggllllCCCCoooonnnnvvvvoooolllluuuuttttiiiioooonnnnFFFFiiiilllltttteeeerrrr1111DDDD,
  187.      ffffggggllllCCCCoooonnnnvvvvoooolllluuuuttttiiiioooonnnnFFFFiiiilllltttteeeerrrr2222DDDD, ffffggggllllCCCCooooppppyyyyPPPPiiiixxxxeeeellllssss, ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxIIIImmmmaaaaggggeeee1111DDDD,
  188.      ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxIIIImmmmaaaaggggeeee2222DDDD, ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee1111DDDD, ffffggggllllCCCCooooppppyyyyTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee2222DDDD,
  189.      ffffggggllllDDDDrrrraaaawwwwPPPPiiiixxxxeeeellllssss, ffffggggllllHHHHiiiissssttttooooggggrrrraaaammmm, ffffggggllllMMMMiiiinnnnmmmmaaaaxxxx, ffffggggllllPPPPiiiixxxxeeeellllSSSSttttoooorrrreeee, ffffggggllllPPPPiiiixxxxeeeellllTTTTrrrraaaannnnssssffffeeeerrrr,
  190.      ffffggggllllRRRReeeeaaaaddddPPPPiiiixxxxeeeellllssss, ffffggggllllSSSSeeeeppppaaaarrrraaaabbbblllleeeeFFFFiiiilllltttteeeerrrr2222DDDD, ffffggggllllTTTTeeeexxxxIIIImmmmaaaaggggeeee1111DDDD, ffffggggllllTTTTeeeexxxxIIIImmmmaaaaggggeeee2222DDDD,
  191.      ffffggggllllTTTTeeeexxxxIIIImmmmaaaaggggeeee3333DDDD, ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee1111DDDD, ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee2222DDDD, ffffggggllllTTTTeeeexxxxSSSSuuuubbbbIIIImmmmaaaaggggeeee3333DDDD
  192.  
  193.  
  194.  
  195.  
  196.                                                                         PPPPaaaaggggeeee 3333
  197.  
  198.  
  199.  
  200.